In some organizations, office sharing or co-location provides easier collaboration between two or more people. In computer programming, pair programming (sometimes referred to as peer programming) is where two or more programmers work together at one workstation. Typically, one programmer acts as the primary editor, sometimes referred as the driver, and the other programmer acts as the secondary editor, sometimes referred as the observer, pointer, or navigator. The secondary editor acts with a broader view of the process and may focus on the strategic direction of the work while the primary editor acts with a narrower view of the process and focuses on the implementation of the current task. Working together, the driver and observer may work more efficiently and produce better results than if each worked on separate projects individually.